﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;

namespace Himp.Platform
{
    /// <summary>
    /// 机构名称
    /// </summary>
    public class Organ : AuditedAggregateRoot<Guid>
    {
        /// <summary>
        /// 机构编号
        /// </summary>
        public string OrganCodg { get; set; }

        /// <summary>
        /// 机构名称
        /// </summary>
        public string OrganName { get; set; }

        /// <summary>
        /// 副标题
        /// </summary>
        public string? Subtitle { get; set; }

        /// <summary>
        /// 网站
        /// </summary>
        public string? Website { get; set; }

        /// <summary>
        /// 简介
        /// </summary>
        public string? Itro { get; set; }

        /// <summary>
        /// 地址
        /// </summary>
        public string? Addr { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        public double? Longitude { get; set; }

        /// <summary>
        /// 纬度
        /// </summary>
        public double? Latitude { get; set; }

        /// <summary>
        /// 封面
        /// </summary>
        public string? Cover { get; set; }

        /// <summary>
        /// 开始时间
        /// </summary>
        public DateTime? Begntime { get; set; }

        /// <summary>
        /// 结束时间
        /// </summary>
        public DateTime? Endtime { get; set; }

        /// <summary>
        /// 管理员账户
        /// </summary>
        public string AdminName { get; set; }

        /// <summary>
        /// 管理员电话
        /// </summary>
        public string AdminTel { get; set; }

        /// <summary>
        /// 管理员邮箱
        /// </summary>
        public string AdminEmail { get; set; }

        /// <summary>
        /// 管理员密码
        /// </summary>
        public string AdminPwd { get; set; }

        /// <summary>
        /// 状态
        /// </summary>
        public EnumOrganStatus OrganStatus { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public Guid? TenantId { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public Organ()
        { 
            
        }

        public Organ(string organCodg, string organName , string adminTel
            , string adminEmail, string adminPwd, string adminName)
        {
            OrganCodg = organCodg;
            OrganName = organName;
            AdminTel = adminTel;
            AdminEmail = adminEmail;
            AdminPwd = adminPwd;
            AdminName = adminName;
            Begntime = DateTime.Now;
            OrganStatus = EnumOrganStatus.审核通过;
        }
    }
}
